home *** CD-ROM | disk | FTP | other *** search
Text File | 1994-04-19 | 3.1 KB | 156 lines | [TEXT/MPS ] |
-
- /*
- * This file was generated by the SOM Compiler.
- * FileName: Locrian:WWDCSun:CPlusPlus:Facet.xh.
- * Generated using:
- * SOM Precompiler somipc: somc/smemit.c
- * SOM Emitter emitxh.dll: somc/smmain.c
- */
-
- /*
- *
- * Theory of Operation
- *
- *
- * Classes defined in this interface
- *
- */
-
-
- #ifndef SOM_ODFacet_xh
- #define SOM_ODFacet_xh
-
- class ODFacet;
-
- #define ODFacet_MajorVersion 1
- #define ODFacet_MinorVersion 0
-
- /* C++ som defs */
- #include <somcls.xh>
-
- /* Include C++ parent defs */
- #ifndef SOM_ODBaseFacet_xh
- #include <FacetB.xh>
- #endif
-
- #ifndef ODFacet_API
- #define ODFacet_API
- /*
- * -- The Class API
- */
-
- /*
- * Start of user-defined types:
- */
- class ODExtension;
- class ODFacetIterator;
- class ODCanvas;
- class ODWindow;
- class ODDragItemIterator;
- class ODFrame;
- class ODShape;
- class ODTransform;
-
- /*
- * End of user-defined types.
- */
-
- #if applec ^ PRAGMA_LIB_EXPORT
- #pragma lib_export on
- #endif
-
-
- /* A procedure to create the ODFacet Class */
- SOMEXTERN SOMClass * SOMLINK ODFacetNewClass(
- integer4 majorVersion,
- integer4 minorVersion);
-
- /* The API to the ODFacet class object, and the methods it introduces. */
- typedef struct ODFacetClassDataStructure {
- SOMClass *classObject;
- somMToken InitFacet;
- somMToken reserved1;
- somMToken reserved2;
- somMToken reserved3;
- } ODFacetClassDataStructure;
- #ifdef SOM_NO_DATA_EXPORTS
- SOMEXTERN ODFacetClassDataStructure * ODFacetGetClassData ( void );
- # undef ODFacetClassData
- # define ODFacetClassData (*ODFacetGetClassData())
- #else
- SOMEXTERN ODFacetClassDataStructure ODFacetClassData;
- #endif /* SOM_NO_DATA_EXPORTS */
-
- #if applec ^ PRAGMA_LIB_EXPORT
- #pragma lib_export off
- #endif
-
- #define _ODFacet ODFacetClassData.classObject
-
- /* The API to parentMtabs for ODFacet, and the instance data it introduces. */
- SOMEXTERN struct ODFacetCClassDataStructure {
- somMethodTabs parentMtab;
- somDToken instanceDataToken;
- } ODFacetCClassData;
-
- /*
- * -- Typedefs for Procedures that support Methods introduced by ODFacet
- */
- SOMEXTERN {
- typedef void (* SOMLINK somTD_ODFacet_InitFacet)(ODFacet *somSelf, Environment *ev,
- ODFrame* frame,
- ODShape* clipShape,
- ODTransform* externalTransform);
- }
-
- #endif /* ODFacet_API */
-
-
- /*
- * -- Method Tokens are Thunks
- */
- #undef somresolve_
- #define somresolve_(obj,mToken) ((somMethodProc*)((void)obj, mToken))
-
- /*
- * -- The C++ Wrapper Class for ODFacet
- */
- class ODFacet : public ODBaseFacet
- {
- public:
-
- void *operator new(size_t size)
- {
- SOM_IgnoreWarning(size);
- if (!ODFacetClassData.classObject)
- ODFacetNewClass(ODFacet_MajorVersion,ODFacet_MinorVersion);
- return (void *)
- ((somTD_SOMClass_somNew)
- somresolve_((SOMObject *)((void*)(ODFacetClassData.classObject)),
- SOMClassClassData.somNew))
- ((SOMClass *)((void*)(ODFacetClassData.classObject)));
- }
-
- void operator delete(void * obj)
- {
- ((SOMObject *)obj)->somFree();
- }
-
- /* public method: InitFacet */
- void InitFacet(Environment *ev,
- ODFrame* frame,
- ODShape* clipShape,
- ODTransform* externalTransform)
- {
- SOM_Resolve(this,ODFacet,InitFacet)
- (this,ev,frame,clipShape,externalTransform);
- }
-
-
-
- }; /* ODFacet */
-
-
-
- #endif /* SOM_ODFacet_xh */
-